home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / COMAL / Z-Misc Series / (k)zl.d64 / prc.sort'anycase < prev    next >
Text File  |  2007-03-01  |  1KB  |  38 lines

  1. 1000 ╨╥╧├ SORT'ANY'CASE(MAX'ITEMS,MAX'CHAR,╥┼╞ STRING$()) ├╠╧╙┼─
  2. 1010   ─╔═ A$(MAX'ITEMS) ╧╞ MAX'CHAR, A'TEMP$ ╧╞ MAX'CHAR
  3. 1020   ─╔═ COMP$ ╧╞ MAX'CHAR, TEMP$ ╧╞ MAX'CHAR
  4. 1030   ╞╧╥ K:=1 ╘╧ MAX'ITEMS ─╧
  5. 1040     //COPY STRING$(K)
  6. 1050     A$(K):=STRING$(K)
  7. 1060     ╞╧╥ I:=1 ╘╧ ╠┼╬(A$(K)) ─╧
  8. 1070       // CONVERT A$(K) TO ALL  L'CASE
  9. 1080       ╔╞ ╧╥─(A$(K)(I))>90 ╘╚┼╬ A$(K)(I):=├╚╥$(╧╥─(A$(K)(I))-128)
  10. 1090     ┼╬─╞╧╥ I
  11. 1100   ┼╬─╞╧╥ K
  12. 1110   
  13. 1120   QUICK(1,MAX'ITEMS)
  14. 1130   
  15. 1140   ╨╥╧├ QUICK(TEND,BEND) 
  16. 1150     TOP:=TEND; BOT:=BEND
  17. 1160     COMP$:=A$((TOP+BOT) ─╔╓ 2)
  18. 1170     ╥┼╨┼┴╘ 
  19. 1180       ╫╚╔╠┼ A$(TOP)<COMP$ ─╧ TOP:=TOP+1
  20. 1190       ╫╚╔╠┼ A$(BOT)>COMP$ ─╧ BOT:=BOT-1
  21. 1200       ╔╞ TOP<=BOT ╘╚┼╬ SWAP
  22. 1210     ╒╬╘╔╠ TOP>BOT
  23. 1220     ╔╞ TEND<BOT ╘╚┼╬ QUICK(TEND,BOT)
  24. 1230     ╔╞ TOP<BEND ╘╚┼╬ QUICK(TOP,BEND)
  25. 1240   ┼╬─╨╥╧├ QUICK
  26. 1250   
  27. 1260   ╨╥╧├ SWAP 
  28. 1270     TEMP$:=STRING$(TOP)
  29. 1280     A'TEMP$:=A$(TOP)
  30. 1290     STRING$(TOP):=STRING$(BOT)
  31. 1300     A$(TOP):=A$(BOT)
  32. 1310     STRING$(BOT):=TEMP$
  33. 1320     A$(BOT):=A'TEMP$
  34. 1330     TOP:=TOP+1; BOT:=BOT-1
  35. 1340   ┼╬─╨╥╧├ SWAP
  36. 1350   
  37. 1360 ┼╬─╨╥╧├ SORT'ANY'CASE
  38.